package com.antdesignbackend.backend.common.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import javax.servlet.http.HttpSession;

@Controller
public class BaseController {

    @Autowired
    private HttpSession session;

    /**
     * 登录者id
     * @return
     */
    public int getLoginUserId() {
        return getAttribute("UserID") == null ? 0:Integer.parseInt(getAttribute("UserID"));
    }
    /**
     * 登录者id
     * @return
     */
    public String getRoleId() {
        return getAttribute("RoleID") == null ? null:getAttribute("RoleID");
    }
    /**
     * 登录者name
     * @return
     */
    public String getLoginUserName() {
        return getAttribute("LoginName");
    }

    public String getUserType() {
        return getAttribute("UserType");
    }

    /**
     * 企业id
     * @return
     */
    public int getLoginEnterpriseId(){
        return getAttribute("EnterpriseID") == null ? 0:Integer.parseInt(getAttribute("EnterpriseID"));
    }

    /**
     * 企业名称
     * @return
     */
    public String getLoginEnterpriseName(){
        return getAttribute("EnterpriseName");
    }

    /**
     * 企业类型，0屠宰企业，1养殖企业
     * @return
     */
    public Integer getLoginEnterpriseTypes(){
        return getAttribute("EnterpriseTypes") == null ? null : Integer.valueOf(getAttribute("EnterpriseTypes"));
    }

    /**
     * 账号等级，1主账号，2子账号
     * @return
     */
    public Integer getLoginGrade(){
        return getAttribute("Grade") == null ? null : Integer.valueOf(getAttribute("Grade"));
    }

    /**
     * 养殖场饲养动物种类，1猪、牛、羊；0鸡、鸭、其他
     * @return
     */
    public Integer getLoginAnimalTypes(){
        return getAttribute("AnimalTypes") == null ? null : Integer.valueOf(getAttribute("AnimalTypes"));
    }

    /**
     * 哺乳转保育的日期
     * @return
     */
    public int getDay1(){
        return getAttribute("day1") == null ? 0 : Integer.parseInt(getAttribute("day1"));
    }

    /**
     * 保育转育成的日期
     * @return
     */
    public int getDay2(){
        return getAttribute("day2") == null ? 0 : Integer.parseInt(getAttribute("day2"));
    }

    /**
     * 预产期天数
     * @return
     */
    public int getBirthDay(){
        return getAttribute("birthDay") == null ? 0 : Integer.parseInt(getAttribute("birthDay"));
    }

    /**
     * 养殖场饲养动物种类，猪、牛、羊；鸡、鸭、其他
     * @return
     */
    public String getLoginAnimal(){
        return getAttribute("Animal");
    }

    /**
     * 养殖场无害化企业Id
     * @return
     */
    public String getHarmlessId(){
        return getAttribute("harmlessId");
    }

    /**
     * 判断登录账号是否是企业账户 true 是，false 不是
     * @return
     */
    public Boolean getLoginIsEnterprise(){
        Boolean b = false;
        if ("1".equals(getAttribute("IsEnterprise"))){
            b = true;
        }
        return b;
    }

    /**
     * 权限类型
     * 1是地市权限
     * 2是区县权限
     * 3是乡镇权限
     * @return
     */
    public Integer getLoginAuthType(){
        return getAttribute("authType") == null ? null : Integer.valueOf(getAttribute("AnimalTypes"));
    }

    private String getAttribute(String attributeName){
        if(session.getAttribute(attributeName) != null){
            return session.getAttribute(attributeName).toString();
        }
        return null;
    }

}
